<html>

<head>
    <title>回调地狱</title>
</head>

<body>
<script>
    // 回调地狱 （多个串联的异步操作）
    // 场景：一秒钟后输出1，两秒钟后输出2，三秒后输出3
    // 歌单--------歌单列表 id--------歌曲信息
    // setTimeout(() => {
    //     console.log(1)
    //     setTimeout(() => {
    //         console.log(2)
    //         setTimeout(() => {
    //             console.log(3)
    //         }, 3000);
    //     }, 2000);
    // }, 1000);

    // 使用promise解决 then(链式调用)
    function getData() {
        return new Promise((resolve, reject) => {
            setTimeout(() => {
                console.log(1)
                resolve(2)
            }, 1000);
        })
    }

    getData().then((value) => {
        return new Promise((resolve, reject) => {
            setTimeout(() => {
                console.log(value)
                resolve(3)
            }, 2000);
        })
    }).then((value) => {
        return new Promise((resolve, reject) => {
            setTimeout(() => {
                console.log(value)
            }, 3000);
        })
    })
</script>
</body>

</html>

</html>
